﻿namespace UnityEditor
{
    using System;
    using System.Runtime.InteropServices;
    using UnityEngine;

    [StructLayout(LayoutKind.Sequential)]
    internal struct ProceduralMaterialInformation
    {
        private Vector2 m_TextureOffsets;
        private Vector2 m_TextureScales;
        private int m_GenerateAllOutputs;
        private int m_AnimationUpdateRate;
        public Vector2 offset
        {
            get
            {
                return this.m_TextureOffsets;
            }
            set
            {
                this.m_TextureOffsets = value;
            }
        }
        public Vector2 scale
        {
            get
            {
                return this.m_TextureScales;
            }
            set
            {
                this.m_TextureScales = value;
            }
        }
        public bool generateAllOutputs
        {
            get
            {
                return (this.m_GenerateAllOutputs != 0);
            }
            set
            {
                this.m_GenerateAllOutputs = !value ? 0 : 1;
            }
        }
        public int animationUpdateRate
        {
            get
            {
                return this.m_AnimationUpdateRate;
            }
            set
            {
                this.m_AnimationUpdateRate = value;
            }
        }
    }
}

